package lectura_escritura;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;

public class LeerEscribir {
	
	private String entrada;
	private List<String> listaCapitulos;
	
	public LeerEscribir(){
		listaCapitulos = new ArrayList<String>();
	}
	
	public List<String> getListaCapitulos(){
		return listaCapitulos;
	}
	
	public List<String> lectura(){
		
		try {
			InputStream lector = new FileInputStream("/home/javictoria/Escritorio/resources.js");
			BufferedReader bf = new BufferedReader(new InputStreamReader(lector));
			
			
			while((entrada=bf.readLine())!=null){
				if(entrada.contains("{title:")){
					int indiceInicio = entrada.indexOf("{");
					int indiceFinal = entrada.indexOf("}");
					String capitulo=entrada.substring(indiceInicio, indiceFinal+1);
					
					listaCapitulos.add("cap = "+capitulo);
				}
			}
			
			lector.close();
			bf.close();
				
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}catch(IOException e){
	    	e.printStackTrace();
	    }
		
		return listaCapitulos;
       	
	}
	
	
	public void escritura(List<String> capitulos){
		int i = 1;
		try {
			for(String cap: capitulos){
				FileWriter f = new FileWriter("/home/javictoria/Escritorio/capitulos/cap"+i+".js");
				f.write(cap);
				f.close();
				i++;
				
			}
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
		System.out.println("¡¡Hecho!!, "+(i-1)+" capítulos escritos");
	}
	
	
	
	public void creaIndex(List<String> capitulos){
		
		int i = 1;
		
		try {
			FileWriter f = new FileWriter("/home/javictoria/Escritorio/capitulos/index.js");
			f.write("index = [\n");
			
			for(String cap: capitulos){
				int indiceInicio = cap.indexOf(":");
				int indiceFinal = cap.indexOf("text:");
				String tituloCap = cap.substring(indiceInicio+2, indiceFinal-2);
				
				f.write("{'chapter':'"+tituloCap+"','desc':''},\n");
				i++;
			}
			
			f.write("];");
			f.close();
			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}
